package com.app.biz.mapper;

import java.util.List;
import com.app.biz.domain.formal.BizIndustrialValueAddedByCityFormal;
import com.app.biz.domain.request.BizIndustrialValueAddedByCityRequest;
import com.app.biz.domain.BizIndustrialValueAddedByCity;
import org.apache.ibatis.annotations.Param;

/**
 * 分市工业增加值正式Mapper接口
 *
 * @author SangGuangCan
 * @date 2024-01-02
 */
public interface BizIndustrialValueAddedByCityFormalMapper
{
    /**
     * 查询分市工业增加值正式
     *
     * @param baseId 分市工业增加值正式主键
     * @return 分市工业增加值正式
     */
    public BizIndustrialValueAddedByCityFormal selectBizIndustrialValueAddedByCityFormalByBaseId(String baseId);

    /**
     * 查询分市工业增加值正式列表
     *
     * @param bizIndustrialValueAddedByCityFormal 分市工业增加值正式
     * @return 分市工业增加值正式集合
     */
    public List<BizIndustrialValueAddedByCityFormal> selectBizIndustrialValueAddedByCityFormalList(BizIndustrialValueAddedByCityFormal bizIndustrialValueAddedByCityFormal);

    /**
     * 新增分市工业增加值正式
     *
     * @param bizIndustrialValueAddedByCityFormal 分市工业增加值正式
     * @return 结果
     */
    public int insertBizIndustrialValueAddedByCityFormal(BizIndustrialValueAddedByCityFormal bizIndustrialValueAddedByCityFormal);

    /**
     * 修改分市工业增加值正式
     *
     * @param bizIndustrialValueAddedByCityFormal 分市工业增加值正式
     * @return 结果
     */
    public int updateBizIndustrialValueAddedByCityFormal(BizIndustrialValueAddedByCityFormal bizIndustrialValueAddedByCityFormal);

    /**
     * 删除分市工业增加值正式
     *
     * @param baseId 分市工业增加值正式主键
     * @return 结果
     */
    public int deleteBizIndustrialValueAddedByCityFormalByBaseId(String baseId);

    /**
     * 批量删除分市工业增加值正式
     *
     * @param baseIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBizIndustrialValueAddedByCityFormalByBaseIds(String[] baseIds);
    /**
     * <p>
     * 查询数据库中数据的日期(year_month字段)并进行去重复操作<br/>
     * 主要用于的是APP端左上角的日期过滤
     * </p>
     *
     * @return 日期的集合
     */
    List<String> getUniqueDatesFromDatabase();


    /**
     * 查询当月的工业增加值
     * @param params
     * @return
     */
    List<BizIndustrialValueAddedByCity> getIndustrialValueAddedByCityList(@Param("p") BizIndustrialValueAddedByCityRequest params);

    /**
     * 批量插入
     * @param list
     */
    void batchInsertBizIndustrialSectorMetricsFormal(List<BizIndustrialValueAddedByCity> list);
}
